import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter04/tools/keep_alive_wrapper.dart';

class ExplorePage extends StatefulWidget {
  const ExplorePage({super.key});

  @override
  State<ExplorePage> createState() => _ExplorePageState();
}

class _ExplorePageState extends State<ExplorePage>
    with SingleTickerProviderStateMixin {
  late TabController _tabController;

  @override
  void initState() {
    super.initState();
    _tabController = TabController(length: 8, vsync: this);
    // _tabController.addListener(() {
    //   if (_tabController.animation!.value == _tabController.index) {
    //     if (kDebugMode) {
    //       print(_tabController.index);
    //     }
    //   }
    // });
  }

  @override
  void dispose() {
    // TODO: implement dispose
    super.dispose();
    _tabController.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: PreferredSize(
        preferredSize: const Size.fromHeight(40),
        child: AppBar(
          backgroundColor: Colors.white,
          elevation: 0.5,
          title: SizedBox(
            height: 30,
            child: TabBar(
              controller: _tabController,
              indicatorColor: Colors.red,
              unselectedLabelColor: Colors.black,
              labelColor: Colors.red,
              indicatorSize: TabBarIndicatorSize.label,
              isScrollable: true,
              labelStyle: const TextStyle(
                fontSize: 16,
              ),
              onTap: (index) {
                if (kDebugMode) {
                  print("index $index");
                }
              },
              tabs: const [
                Tab(
                  child: Text("关注"),
                ),
                Tab(
                  child: Text("热门"),
                ),
                Tab(
                  child: Text("视频"),
                ),
                Tab(
                  child: Text("娱乐"),
                ),
                Tab(
                  child: Text("养老"),
                ),
                Tab(
                  child: Text("抗疫"),
                ),
                Tab(
                  child: Text("剧集"),
                ),
                Tab(
                  child: Text("文化"),
                ),
              ],
            ),
          ),
        ),
      ),
      body: TabBarView(
        controller: _tabController,
        children: [
          KeepAliveWrapper(
              child: ListView(
            children: const [
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关e注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关4注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是5关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关6注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我是关注列表1"),
              ),
              ListTile(
                title: Text("我zxfzx是关注列表1"),
              ),
            ],
          )),
          const Text("我是热门"),
          const Text("我是关注"),
          const Text("我是热门"),
          const Text("我是关注"),
          const Text("我是热门"),
          const Text("我是关注"),
          const Text("我是热门"),
        ],
      ),
    );
  }
}
